home *** CD-ROM | disk | FTP | other *** search
/ Merciful 1 / Merciful - Disc 1.iso / software / m / multi_media_demo_maker / multimediademomakerv1.0.dms / multimediademomakerv1.0.adf / sources / equalizer1.S next >
Text File  |  1990-11-13  |  2KB  |  108 lines

  1. ;-----------------------------------------------------------------------
  2. ; Beispiel eines Vektorobjekt-Sourcecodes
  3. ;-----------------------------------------------------------------------
  4. ; Normales Linienobjekt (Quader)
  5. ;-----------------------------------------------------------------------
  6. ;(Seka-format)
  7. ;Benutzung:
  8. ;a (return)
  9. ;wi (return)
  10. ;name (return)
  11. ;start (return)
  12. ;end (return)
  13. ;Danach kann das Objekt vom Demomaker aus unter "name" eingeladen werden.
  14. ;------------------------------------------------------------------------
  15.  
  16. start:
  17. dc.l    "VECT"    ;Kennung fuer Objekt!!!
  18.  
  19. filledob1:
  20. dc.l polylist-filledob1        ;offset zu Punktstruktur
  21. dc.l verbindung-filledob1    ;offset zu Verbindungsstruktur
  22. dc.w 400            ;zoom = 400
  23. dc.w 0,$fff,0,0,0,0,0,0        ;8 Farben    (2.Farbe is Objektfarbe)
  24. dc.b 0    ;kein sync
  25. dc.b 2    ;2-Linienobjekt
  26. dc.w 0    ;hier keine Funktion
  27. dc.l 0    ;kein Init
  28. dc.l equa-filledob1    ;Zusatroutine
  29.  
  30. ;Equalizerroutine...
  31.  
  32. equa:    move.l 16(a0),d0    ;Testen, ob Musik in Demo enthalten...
  33.     tst d0
  34.     bne musicda
  35.     rts
  36. musicda:move.l d0,a0        ;Equalizertab nach a0
  37.     lea equ1(pc),a1
  38.     moveq #3-1,d1        ;4 Stimmen
  39. loop2:    cmp #20,(a1)
  40.     ble not2
  41.     sub #5,(a1)
  42.     sub #5,24(a1)
  43.     sub #5,6(a1)
  44.     sub #5,30(a1)
  45. not2:    tst (a0)        ;auslesen
  46.     beq not1        ;kein Instrument
  47.     move.w #100,(a1)    ;Ausschlag neu setzen
  48.     move.w #90,24(a1)
  49.     move.w #100,6(a1)
  50.     move.w #90,30(a1)
  51. not1:   addq.l #6,a0
  52.     lea [6*8](a1),a1    ;auf naechsten Eintrag
  53.     dbf d1,loop2
  54.     rts
  55. polylist:
  56. dc.w 8+8+8+8
  57. dc.w -60,0,10
  58. dc.w -80,0,10
  59. dc.w -80
  60. equ1:
  61. dc.w 100,10
  62. dc.w -60,100,10
  63. dc.w -60,0,-10
  64. dc.w -80,0,-10
  65. dc.w -80,90,-10
  66. dc.w -60,90,-10
  67.  
  68. dc.w -15,0,10
  69. dc.w -35,0,10
  70. dc.w -35,100,10
  71. dc.w -15,100,10
  72. dc.w -15,0,-10
  73. dc.w -35,0,-10
  74. dc.w -35,90,-10
  75. dc.w -15,90,-10
  76.  
  77. dc.w 15,0,10
  78. dc.w 35,0,10
  79. dc.w 35,100,10
  80. dc.w 15,100,10
  81. dc.w 15,0,-10
  82. dc.w 35,0,-10
  83. dc.w 35,90,-10
  84. dc.w 15,90,-10
  85.  
  86. dc.w 60,0,10
  87. dc.w 80,0,10
  88. dc.w 80,100,10
  89. dc.w 60,100,10
  90. dc.w 60,0,-10
  91. dc.w 80,0,-10
  92. dc.w 80,90,-10
  93. dc.w 60,90,-10
  94.  
  95. verbindung:
  96. dc.w 48
  97. dc.w 0,1,1,2,2,3,3,0,4,5,5,6,6,7,7,4,0,4,3,7,1,5,2,6
  98.  
  99. dc.w 8,9,9,10,10,11,11,8,12,13,13,14,14,15,15,12,8,12
  100. dc.w 11,15,9,13,10,14
  101.  
  102. dc.w 16,17,17,18,18,19,19,16,20,21,21,22
  103. dc.w 22,23,23,20,16,20,19,23,17,21,18,22
  104.  
  105. dc.w 24,25,25,26,26,27,27,24,28,29,29,30
  106. dc.w 30,31,31,28,24,28,25,29,26,30,27,31
  107. end:
  108.